-- 2022-8-1

--[[
    7.4.0
    -- 函数os.exit用于终止程序的执行
    -- 该函数的第一个参数是可选的，表示该程序的返回状态，其值可以为一个数值(0表示执行成功)或者一个布尔值(true表示执行成功)
    -- 该案书的第二个参数也是可选的，当值为true时会关闭Lua状态并调用所以析构器释放所占用的所有内存
    -- (这种终止方式通常是非必要的，因为大多数操作系统会在进程退出时释放器占用的所有资源)

    -- 函数os.getenv用于获取某个环境变量，该函数的输入参数是环境变量的名称，返回值为保存了该环境变量对应值的字符串
    -- 对于未定义的环境变量，该函数返回nil
]]

--[[
    7.4.1 运行系统命令
    -- 函数os.execute用于运行系统命令，它等价于C语言中的函数System。该函数的参数为表示待执行命令的字符串，返回值为命令运行结束后的状态
    -- 其中第一个返回值是一个布尔类型，当为true时表示程序成功运行完成；
    -- 第二个返回值是一个字符串，当为 "exit"时表示程序正常运行结束，当为 "signal"时表示因信号而中断
    -- 第三个返回值是返回状态(若该程序正常终结)或者终结该程序的信号代码
    -- 例如创建目录os.execute("mkdir n")
    
    -- io.popen，同函数os.execute一样,该函数运行系统的一条命令，但该函数还可以重定向命令的输入/输出，从而使得程序可以向命令中写入或读出
]]